home *** CD-ROM | disk | FTP | other *** search
/ Aminet 12 / Aminet 12 (1996)(GTI - Schatztruhe)[!][Jun 1996].iso / Aminet / dev / misc / FidoLib.lha / FidoLib / fidonet.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-03-20  |  3.4 KB  |  82 lines

  1. /* fidonet.h */
  2.  
  3. extern ULONG stoa(u_char *,struct NetAddr *);
  4. extern u_char *atos(struct NetAddr *);
  5. extern BPTR MakePkt(u_char *,u_char *,u_char *,u_char *);
  6. extern void MakeMsg(BPTR,u_char *,UWORD),ClosePkt(BPTR);
  7.  
  8. /* This C include file defines some of the structures used in the FidoNet
  9.    technology. This file was compiled from the FidoNet documentation by
  10.    Sami Klemola. */
  11.  
  12. struct Packet { /* Type-2 Packet Format */
  13.     UWORD OrigNode;         /* Origination node address   0-65535       */
  14.     UWORD DestNode;         /* Destination node address   1-65535       */
  15.     UWORD Year;             /* Year packet generated      19??-2???     */
  16.     UWORD Month;            /* Month  "        "          0-11 (0=Jan)  */
  17.     UWORD Day;              /* Day    "        "          1-31          */
  18.     UWORD Hour;             /* Hour   "        "          0-23          */
  19.     UWORD Min;              /* Minute "        "          0-59          */
  20.     UWORD Sec;              /* Second "        "          0-59          */
  21.     UWORD Baud;             /* Baud Rate (not in use)     ????          */
  22.     UWORD PktVer;           /* Packet Version             Always 2      */
  23.     UWORD OrigNet;          /* Origination net address    1-65535       */
  24.     UWORD DestNet;          /* Destination net address    1-65535       */
  25.     UBYTE PrdCodL;          /* FTSC Product Code     (lo) 1-255         */
  26.     UBYTE PVMajor;          /* FTSC Product Rev   (major) 1-255         */
  27.     u_char Password[8];     /* Packet password            A-Z,0-9       */
  28.     UWORD QOrgZone;         /* Orig Zone (ZMailQ,QMail)   1-65535       */
  29.     UWORD QDstZone;         /* Dest Zone (ZMailQ,QMail)   1-65535       */
  30.     UWORD Filler;           /* Spare Change               ?             */
  31.     UWORD CapValid;         /* CW Byte-Swapped Valid Copy BitField      */
  32.     UBYTE PrdCodH;          /* FTSC Product Code     (hi) 1-255         */
  33.     UBYTE PVMinor;          /* FTSC Product Rev   (minor) 1-255         */
  34.     UWORD CapWord;          /* Capability Word            BitField      */
  35.     UWORD OrigZone;         /* Origination Zone           1-65535       */
  36.     UWORD DestZone;         /* Destination Zone           1-65535       */
  37.     UWORD OrigPoint;        /* Origination Point          1-65535       */
  38.     UWORD DestPoint;        /* Destination Point          1-65535       */
  39.     ULONG ProdData;         /* Product-specific data      Whatever      */
  40. /*  UWORD PktTerm; */       /* Packet terminator          0000          */
  41. }; /* 0x3a */
  42.  
  43. struct PkdMsg { /* A packed message */
  44.     UWORD   Type;
  45.     UWORD   OrigNode;
  46.     UWORD   DestNode;
  47.     UWORD   OrigNet;
  48.     UWORD   DestNet;
  49.     UWORD   Attribute;
  50.     UWORD   Cost;
  51.     u_char  DateTime[20];
  52.     void    Data;           /* To [36], From [36], Subject [72], Text */
  53. };
  54.  
  55. /* Attribute word */
  56.  
  57. #define MSGF_PRIVATE        1
  58. #define MSGF_CRASH          2
  59. #define MSGF_RECEIVED       4
  60. #define MSGF_SENT           8
  61. #define MSGF_FILEATTACH     16
  62. #define MSGF_INTRANSIT      32
  63. #define MSGF_ORPHAN         64
  64. #define MSGF_KILLSENT       128
  65. #define MSGF_LOCAL          256
  66. #define MSGF_HOLD           512
  67. #define MSGF_FILEREQUEST    2048
  68. #define MSGF_RETURNRECREQ   4096
  69. #define MSGF_ISRETREQ       8192
  70. #define MSGF_AUDITREQ       16384
  71. #define MSGF_FILEUPDREQ     32768
  72.  
  73. /* This structure holds a fidonet address. */
  74.  
  75. struct NetAddr {
  76.     UWORD   Zone;
  77.     UWORD   Net;
  78.     UWORD   Node;
  79.     UWORD   Point;
  80. };
  81.  
  82.